export default function (meta, vm) {
  function singleOptCheck(args) {
    const { rows } = args.data;
    if (!rows || rows.length == 0) {
      alert("请选择数据行！");
      return false;
    } else if (rows.length > 1) {
      alert("只能选择单行数据！");
      return false;
    }
    return rows[0];
  }
  return {
    onInit: function () {
      // 设置视图数据模型
      vm.on("appendType", args => {
        let data = singleOptCheck(args);
        if (!data) {
          return false;
        }
        const { ns, name, id, module } = data;
        let param = {
          id, ns, name, "isDefault": true, module
        }
        args.data.param = param;
        vm.utils.showDialog("dialog_set_default_model", args);
        return args.promise;
      });

      vm.on("appendItems", args => {
        let data = singleOptCheck(args);
        if (!data) {
          return false;
        }
        const { ns, name, id } = data;
        let param = {
          viewId: id,
        }
        args.data.param = param;
        vm.utils.showDialog("dialog_set_ctl_items", args);
        return args.promise;
      });

      vm.on("createView", args => {
        const { rows } = args.data;
        if (rows && rows.length > 0) {
          let row = rows[0];
          const { project, ns } = row;
          let param = args.data.param || {};
          param.project = project;
          param.ns = ns;
          param.module = ns + '-';
          args.data.param = param;
        }
        vm.utils.showDialog("dialog_create_view", args);
        return args.promise;
      });

      vm.on("btnInitControls", args => {

      });

      vm.on("btnInitItems", args => {

      });

      vm.on("btnInitFilters", args => {

      });
    }
  }
}